
/*
 * Este programa ordena una lista de numeros mediante el algoritmo de MergeSort.
 * El procesamiento de este programa es realizado en forma secuencial.
 */

/* Inclusión de bibliotecas propias */
#include "master.h"
#include "worker.h"

/* Inclusión de bibliotecas estandares */
#include <mpi.h>
#include <stdlib.h>


/* Sección de implementación de funciones */

int main(int argc, char **argv) {

    // Iniciamos la librería mpi
    MPI_Init(&argc,&argv);

    // Verificar nuestro ranking dentro del comunicador global
    int globalRank; // Ranking en el comunicador global
    MPI_Comm_rank(MPI_COMM_WORLD, &globalRank);

    // Ejecutamos la logica correspondiente a nuestro nodo
    if(globalRank == 0) {
        master();
    } else {
        worker();
    }

    // Finalizamos la librería de MPI
    MPI_Finalize();
    return (EXIT_SUCCESS);
    
}
